﻿using AutoMapper.Internal.Mappers;
using EMS.system.Entityies.BaseData;
using EMS.system.IEntityAppService.BaseData.IRoleService.RoleDto;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Dynamic.Core;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Application.Services;
using Volo.Abp.Domain.Repositories;

namespace EMS.system.IEntityAppService.BaseData.IRoleService
{
    public interface IRoleAppService:IApplicationService
    {
        /// <summary>
        /// 角色新增
        /// </summary>
        /// <param name="addDto"></param>
        /// <returns></returns>
        Task<int> RoleAdd(RoleAddDto addDto);

        /// <summary>
        /// 显示角色
        /// </summary>
        /// <param name="name"></param>
        /// <param name="page"></param>
        /// <param name="limit"></param>
        /// <returns></returns>
        Task<PagedResult> RoleList(string name, int page, int limit);

        /// <summary>
        /// 删除角色
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<int> RoleDel(string ids);

        /// <summary>
        /// 获取单个角色信息
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<RoleUpdDto> GetSingRole(int id);

        /// <summary>
        /// 编辑角色信息
        /// </summary>
        /// <param name="dto"></param>
        /// <returns></returns>
        Task<int> RoleUpd(RoleUpdDto dto);
    }
}
